Ext.require(['HIT.view.ErrorDetailGrid']);

Ext.define('HIT.view.ImportFilePanel', {
    extend        : 'Ext.grid.Panel',
    alias         : 'widget.importfilepanel',
    id			  : 'import_file_local_and_server',
    cls           : 'custom-grid',
    frame         : false,
    width         : 1200,
    store         : 'Center',
    columnLines   : false,

    initComponent : function() {
        var me = this;
        
        Ext.applyIf(me, {
            columns : [ {
                xtype : 'rownumberer',
                resizable: true,
                width : 30
            }, {
                xtype     : 'gridcolumn',
                align     : 'center',
                dataIndex : 'status',
                text      : '',
                hidden    : true
            }, {
                xtype     : 'gridcolumn',
                width     : 140,
                align: 'left',
                style:'text-align:center;',
                dataIndex : 'code',
                text      : Share.T('批次号')
            }, {
                xtype     : 'gridcolumn',
                id         : 'file-title1-tax',
                width     : 130,
                align: 'left',
                style:'text-align:center;',
                dataIndex : 'filename',//由SCHEME_FILE提供
                text      : Share.T('文件一')
            }, {
                xtype     : 'gridcolumn',
                id         : 'file-title2-tax',
                width     : 130,
                align: 'left',
                style:'text-align:center;',
                dataIndex : 'filename2',//由SCHEME_FILE提供
                text      : Share.T('文件二')
            }, {
                xtype     : 'gridcolumn',
                id         : 'file-title3-tax',
                width     : 130,
                align: 'left',
                style:'text-align:center;',
                dataIndex : 'filename3',//由SCHEME_FILE提供
                text      : Share.T('文件三')
            }, {
                xtype     : 'gridcolumn',
                id         : 'file-title4-tax',
                width     : 130,
                align: 'left',
                style:'text-align:center;',
                dataIndex : 'filename4',//由SCHEME_FILE提供
                text      : Share.T('文件四')
            }, {
                xtype     : 'gridcolumn',
                id         : 'file-title5-tax',
                width     : 130,
                align: 'left',
                style:'text-align:center;',
                dataIndex : 'filename5',//由SCHEME_FILE提供
                text      : Share.T('文件五')
            }, {
                xtype     : 'gridcolumn',
                // style: 'text-align:center',
                align: 'left',
                style:'text-align:center;',
                width     : 120,
                dataIndex : 'source',
                text      : Share.T('数据源')
            }, {
                xtype            : 'numbercolumn',
                styleHtmlContent : false,
                width            : 80,
                align: 'left',
                style:'text-align:center;',
                dataIndex        : 'sumlines',
                text             : Share.T('总行数'),
                format           : '0,000'
            }, {
                xtype     : 'numbercolumn',
                width     : 130,
                align	  : 'left',
                style     :'text-align:center;',
                dataIndex : 'importlines',
                text      : Share.T('已导入行数'),
                format    : '0,000'
            }, {
                xtype     : 'gridcolumn',
                width     : 130,
                align     : 'center',
                dataIndex : 'starttime',
                format    : 'y/m/d H:i:s',
                text      : Share.T('起始时间')
            },{
                xtype     : 'gridcolumn',
                width     : 130,
                align     : 'center',
                dataIndex : 'stoptime',
                format    : 'y/m/d H:i:s',
                text      : Share.T('结束时间')
            }, {
                xtype     : 'gridcolumn',
                width     : 100,
                align     : 'left',
                style     :'text-align:center;',
                dataIndex : 'importuser',
                text      : Share.T('操作员')
            }, {
                xtype     : 'gridcolumn',
                width     : 100,
                align     : 'center',
                dataIndex : 'status_name',
                text      : Share.T('状态')
            }, {
                xtype     : 'gridcolumn',
                width     : 130,
                align     : 'center',
                dataIndex : 'createtime',
                format    : 'y/m/d H:i:s',
                text      : Share.T('创建时间')
            }, {
                xtype     : 'actioncolumn',
                width     : 130,
                align     : 'left',
                style     :'text-align:center;',
                dataIndex : 'taskdesc',
                text      : Share.T('任务描述'),
                items     : [{
                    icon     : '/TAX/resources/images/icon24/magic.png',
                    getClass : function(v, meta, rec) {
                        if (rec.get('taskdesc') == "") {
                            return 'x-hidden';
                        }
                    },
                    handler  : function(grid, rowIndex, colIndex) {
                        var rec = grid.getStore('Center').getAt(rowIndex);
                        var importCode = rec.get('code');
                        var tabPanel = Ext.getCmp('centertabpanel');
                        var tab = tabPanel.getComponent('tab-error-detail');
                        if (!tab) {
                            var newPanel = Ext.create('widget.errordetailgrid2', {
                                closable   : true,
                                autoScroll : true
                            });
                            if (newPanel) {
                                tab = tabPanel.add(newPanel).show();
                                if (tab.store) {
                                    tab.store.on('beforeload', function(store) {
                                        Ext.apply(tab.store.proxy.extraParams, {
                                            importCode : importCode
                                        });
                                    });
                                    tab.store.load();
                                }
                                // 限制最多能开10个tab
                                if (tabPanel.items.length > 10) {
                                    var firstTab = tabPanel.getComponent(tabPanel.items.items[1]);
                                    if (firstTab) {
                                        tabPanel.remove(firstTab);
                                    }
                                }
                            }
                            Ext.getCmp('actionbar').removeAll();
                            var g = Ext.create("Ext.ButtonGroup");
                            var d = Ext.create('Ext.Button');
                            d.id = "export-error";
                            d.text = Share.T("导出");
                            d.scale = "large";
                            d.width = 82;
                            d.iconCls = "tj-head-export";
                            d.iconAlign = "top";
                            g.add(d);
                            Ext.getCmp('actionbar').add(g);
                        } else {
                            tabPanel.setActiveTab(tab);
                            if (tab.store) {
                                tab.store.on('beforeload', function(store) {
                                    Ext.apply(tab.store.proxy.extraParams, {
                                        importCode : importCode
                                    });
                                });
                                tab.store.load();
                            };
                            Ext.getCmp('actionbar').removeAll();
                            var g = Ext.create("Ext.ButtonGroup");
                            var d = Ext.create('Ext.Button');
                            d.id = "export-error";
                            d.text = Share.T("导出");
                            d.scale = "large";
                            d.width = 82;
                            d.iconCls = "tj-head-export";
                            d.iconAlign = "top";
                            g.add(d);
                            Ext.getCmp('actionbar').add(g);
                        }
                    }
                } ]
            } ],
            viewConfig  : {
                enableTextSelection : true
            },
            selModel : Ext.create('Ext.selection.CheckboxModel', {
                checkOnly : false
            }),
            dockedItems : [ {
                xtype       : 'pagingtoolbar',
                id          : 'importfiletoolbar',
                dock        : 'bottom',
                width       : 360,
                inputItemWidth:45,
                displayInfo : true,
                store       : 'Center',
                plugins     : [ {
                    ptype      : "pagesize",
                    uxPageSize : page_size
                } ]
            } ]
        });
        me.callParent(arguments);
    }
});